package com.ctvit.cch.ai.pojo.dto;

import jakarta.validation.constraints.NotBlank;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

/**
 * 自动分类DTO
 *
 * @author heyingcheng
 * @date 2025/07/30
 */
@Getter
@Setter
@ToString
public class AutoCategoryDTO {

    public static final String SYSTEM_MESSAGE_TEXT = "你是一名内容分类专家,根据我提供的具体分类,对给定的热点新闻稿/热点短视频的标题或简介进行分类,选出最符合的类别,且严格以单行纯JSON格式字符串文本回复,仅包含category_name(分类名称),category_reason(判断该分类的理由).";

    public static final String USER_MESSAGE_TEMPLATE = """
            **标题**:[%s]
            **简介**:[%s]
            **具体分类**:时事新闻,社会事件,体育赛事,娱乐新闻,气象安全,美食饮食,个护美妆,时尚穿搭,家居家政,教育培训,数码科技,亲子育儿,健康经验,运动健身,影视文娱,明星动态,艺术创作,商业经营,旅游出行,情感社交,宠物世界,游戏竞技,汽车天地,生活技巧,生活方式,家居氛围,软装硬装,健康科普,疾病分类,医疗机构,整形医疗,孕产医疗,疾病科普
            **额外需求**:请你仔细分析我提供的标题或简介,结合上述分类的定义和范畴,判断其最匹配的分类。
            """;

    /**
     * 标题
     */
    @NotBlank(message = "标题不能为空")
    private String title;

    /**
     * 简介
     */
    private String summary;

    public AutoCategoryDTO() {
    }

    public AutoCategoryDTO(String title, String summary) {
        this.title = title;
        this.summary = summary;
    }

}
